package com.offics.loan.domain.entity;

import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;

import java.time.LocalDateTime;

/**
 * 常见问题实体类
 */
@Data
@TableName("loan_faq")
public class FAQ {

    /**
     * 问题ID
     */
    @TableId(type = IdType.AUTO)
    private Long id;

    /**
     * 问题标题
     */
    private String title;

    /**
     * 问题内容
     */
    private String content;

    /**
     * 问题分类（0-贷款，1-还款，2-账户，3-其他）
     */
    private Integer category;

    /**
     * 排序
     */
    private Integer sort;

    /**
     * 状态（0-禁用，1-启用）
     */
    private Integer status;

    /**
     * 是否删除（0-未删除，1-已删除）
     */
    @TableLogic
    private Integer deleted;

    /**
     * 创建时间
     */
    @TableField(fill = FieldFill.INSERT)
    private LocalDateTime createTime;

    /**
     * 更新时间
     */
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;

    /**
     * 检查FAQ是否启用
     *
     * @return 是否启用
     */
    public boolean isEnabled() {
        return status != null && status == 1;
    }

    /**
     * 获取分类名称
     *
     * @return 分类名称
     */
    public String getCategoryName() {
        if (category == null) {
            return "其他";
        }
        return switch (category) {
            case 0 ->
                "贷款";
            case 1 ->
                "还款";
            case 2 ->
                "账户";
            case 3 ->
                "其他";
            default ->
                "其他";
        };
    }
}
